package com.jiangxjsy.admin.service;

import com.jiangxjsy.model.core.entity.UserMeta;

import java.util.List;

/**
 * wukong-crm-master
 * 蒋胜宇
 * 2025/6/6 19:34
 */

public interface AdminUserRoleService {
    /**
     * 根据用户 id 查询用户角色 id
     *
     * @param userId 用户 id
     * @return 角色 id 列表
     */
    List<Integer> queryUserRoleIds(Long userId);

    /**
     * 根据用户 id 查询用户角色数量
     *
     * @param userId 用户 id
     * @return 角色数量
     */
    Integer queryCountByUserId(Long userId);

    /**
     * 通过userID删除该用户的所有
     *
     * @param userId 用户ID
     * @param isRemove 是否删除原有角色
     * @param roleIds 角色列表
     * @param userMeta 用户元数据
     */
    void saveByUserId(Long userId, boolean isRemove, List<String> roleIds, UserMeta userMeta);
}
